Applying Refactoring Techniques to UML/OCL Models

نویسندگان

  • Alexandre L. Correa
  • Cláudia Maria Lima Werner
چکیده

The Object Constraint Language (OCL) plays an important role in the elaboration of precise UML models. Although OCL was designed to be both formal and simple, UML/OCL models may be difficult to understand and evolve, particularly when constraints containing complex or duplicate expressions are present. Moreover, the evaluation of how changes in the definition of the underlying classes impact the OCL part of a model may be a difficult and time-consuming task. In this paper, we discuss how refactoring techniques can be applied in order to improve the understandability of a UML/OCL model and how to support its evolution. In particular, we present a collection of refactorings and discuss how they can be specified and automated. We also show how the model animation features can be used to increase our confidence that the semantics of a model is preserved when a refactoring is manually performed.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

RoclET– Refactoring OCL Expressions by Transformations

The role of UML models in software development has changed considerably over the last years. While UML was used in its early days mostly as a notation for sketching ideas, developers more and more recognize now the value of a UML model as a formal document that can be processed by tools, e.g. in order to generate code and documentation. Precise software models, however, can usually not be expre...

متن کامل

Synchronizing Refactored UML Class Diagrams and OCL Constraints

UML class diagrams are usually annotated with OCL expressions that constrain their possible instantiation. In our work we have investigated how OCL annotations can be automatically updated each time the underlying diagram is refactored. All our refactoring rules are formally specified using a QVT-based graphical formalism and have been implemented in our tool ROCLET. I. REFACTORING CLASS DIAGRA...

متن کامل

RoclET– A Tool for Wrestling with OCL Specifications

In this paper, we describe the architecture and the functionality of our own OCL tool called RoclET. Besides standard features of OCL tools such as editing of class and object diagrams and parsing of OCL assertions (invariants, pre-/post-conditions), our tool supports also the evaluation of OCL constraints in a given system snapshot (object diagram), refactoring of UML/OCL models, and impact an...

متن کامل

Refactoring of UML models using AGG

Model refactoring is an emerging research topic that is heavily inspired by refactoring of object-oriented programs. Current-day UML modeling environments provide poor support for evolving UML models and applying refactoring techniques at model level. As UML models are intrinsically graph-based in nature we propose to use graph transformations to specify and apply model refactoring. More in par...

متن کامل

A Graphical Approach to Prove the Semantic Preservation of UML/OCL Refactoring Rules

Refactoring is a powerful technique to improve the quality of software models including implementation code. The software developer applies successively so-called refactoring rules on the current software model and transforms it into a new model. Ideally, the application of a refactoring rule preserves the semantics of the model, on which it is applied. In this paper, we present a simple criter...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2004